"""
快速启动脚本
直接运行此文件即可启动服务
"""
import sys
import os
from pathlib import Path

# 确保必要的目录存在
Path("models").mkdir(exist_ok=True)
Path("uploads").mkdir(exist_ok=True)
Path("logs").mkdir(exist_ok=True)
Path("static").mkdir(exist_ok=True)

print("=" * 60)
print("🚀 人脸质量检测API - 启动中...")
print("=" * 60)
print()

# 检查模型是否存在
model_path = Path("models/buffalo_l")
if model_path.exists():
    print(f"✅ 找到模型文件: {model_path}")
    # 列出模型文件
    model_files = list(model_path.glob("*.onnx"))
    if model_files:
        print(f"   模型数量: {len(model_files)}")
        for f in model_files:
            print(f"   - {f.name}")
    else:
        print("⚠️  警告: 模型目录为空")
else:
    print("⚠️  警告: 未找到模型文件")
    print(f"   请将 buffalo_l 文件夹放在: {model_path.absolute()}")

print()

# 检查静态文件
html_path = Path("static/debug.html")
if html_path.exists():
    print(f"✅ 找到HTML调试页面: {html_path}")
else:
    print("⚠️  警告: 未找到HTML调试页面")

print()
print("=" * 60)
print("📡 启动服务...")
print("=" * 60)
print()
print("访问地址:")
print("  🌐 Web界面:  http://localhost:8000")
print("  📚 API文档:  http://localhost:8000/docs")
print("  ❤️  健康检查: http://localhost:8000/health")
print()
print("按 Ctrl+C 停止服务")
print("=" * 60)
print()

# 启动uvicorn
if __name__ == "__main__":
    import uvicorn
    
    uvicorn.run(
        "api:app",
        host="0.0.0.0",
        port=8000,
        reload=True,
        log_level="info"
    )

